The ROOTS Constraint
نویسندگان
چکیده
A wide range of counting and occurrence constraints can be specified with just two global primitives: the Range constraint, which computes the range of values used by a sequence of variables, and the Roots constraint, which computes the variables mapping onto a set of values. We focus here on the Roots constraint. We show that propagating the Roots constraint completely is intractable. We therefore propose a decomposition which can be used to propagate the constraint in linear time. Interestingly, for all uses of the Roots constraint we have met, this decomposition does not destroy the global nature of the constraint as we still prune all possible values. In addition, even when the Roots constraint is intractable to propagate completely, we can enforce bound consistency in linear time simply by enforcing bound consistency on the decomposition. Finally, we show that specifying counting and occurrence constraints using Roots is effective and efficient in practice on two benchmark problems from CSPLib.
منابع مشابه
The Range Constraint: Algorithms and Implementation
We recently proposed a simple declarative language for specifying a wide range of counting and occurrence constraints. The language uses just two global primitives: the Range constraint, which computes the range of values used by a set of variables, and the Roots constraint, which computes the variables mapping onto particular values. In order for this specification language to be executable, p...
متن کاملThe Range and Roots Constraints: Algorithms and Implementation
We recently proposed a simple declarative language for specifying a wide range of counting and occurrence constraints. The language uses just two global primitives: the Range constraint, which computes the range of values used by a set of variables, and the Roots constraint, which computes the variables mapping onto particular values. In this paper, we demonstrate that this specification langua...
متن کاملOpportunities and Challenges for Constraint Programming
Constraint programming has become an important technology for solving hard combinatorial problems in a diverse range of application domains. It has its roots in artificial intelligence, mathematical programming, operations research, and programming languages. This paper gives a perspective on where constraint programming is today, and discusses a number of opportunities and challenges that coul...
متن کاملConstraint-Selected and Search-Optimized Families of Daubechies Wavelet Filters Computable by Spectral Factorization
A unifying algorithm has been developed to systematize the collection of compact Daubechies wavelets computable by spectral factorization of a symmetric positive polynomial. This collection comprises all classes of real and complex orthogonal and biorthogonal wavelet filters with maximal flatness for their minimal length. The main algorithm incorporates spectral factorization of the Daubechies ...
متن کاملExecutable Speci cations for Concurrent Programming
Concurrent programming has been diicult to do, both from a programming and a formal ver-iication perspective. The main reasons are that the concurrency constructs are low-level and their use is intertwined with the rest of the program. In this paper, we use as a basis a new concurrent programming model called Open Constraint Programming. Its roots are in Concurrent Constraint Programming where ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2006